package com.ruoyi.business.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;


/**
 * 入库单明细对象 wms_in_warehous_detail
 * 
 * @author sz
 * @date 2024-01-08
 */
@Data
public class WmsInWarehousDetail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 批次号 */
    @Excel(name = "批次号")
    private String batchNumber;

    /** 货物id */
    @Excel(name = "货物id")
    private Long cargoId;

    /** 货物编码 */
    @Excel(name = "货物编码")
    private String cargoSn;

    /** 货物名称 */
    @Excel(name = "货物名称")
    private String cargoName;

    /** 单价 */
    @Excel(name = "单价")
    private BigDecimal unitPrice;

    /** 数量 */
    @Excel(name = "数量")
    private Long num;

    /** 类型：1良品，2不良品 */
    @Excel(name = "类型：1良品，2不良品")
    private Integer type;

    /** 单位 */
    @Excel(name = "单位")
    private String cargoUnit;

    /** 托盘id */
    @Excel(name = "托盘id")
    private Long trayId;

    /** 工厂id */
    @Excel(name = "工厂id")
    private Long factoryId;

    /** 仓库id */
    @Excel(name = "仓库id")
    private Long storeId;

    /** 库区id */
    @Excel(name = "库区id")
    private Long storeRegionId;

    /** 库位id */
    @Excel(name = "库位id")
    private Long storeRegionLocationId;

    /** 规格 */
    @Excel(name = "规格")
    private String cargoSpec;

    /** 有效期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date validityDate;

    /** 入库单id */
    @Excel(name = "入库单id")
    private Long inWarehousId;

    //审核状态：0待审核，1审核通过，2审核不通过
    private Integer processStatus;

    //审核意见
    private String processRemark;

    //审核人
    private String processUser;

    //审核时间
    private Date processTime;

    //工厂
    private String factoryName;

    //仓库
    private String storeName;

    //库区
    private String storeRegionName;

    //库位
    private String storeRegionLocationName;

    //托盘码
    private String trayName;

    //入库单号
    private String inStoreSn;

    //入库计划单号
    private String planSn;

    //供应商名称
    private String supplierName;

    //供应商id
    private Long supplierId;

    private Long totalNum;

    //临期天数
    private Integer days;

}
